HOWTO add a monthly special general
General To introduce a monthly special general in CAAP we need the following information: *The unique buy_id assigned to the general by the Castle Age developers, we call it b ' *Name, simply the name given to the general by the CA devs, we call it '''n ' *It's starting attack value, IMPORTANT this is the stat when the general is at level 1 and without any equipment, we call it 'a ' *Initial defense value at level 1 without any equipment, we call it 'd ' *Any information/peculiarity of the general, this is typically which bonus this particular general has, we call it '''i *A picture of the general as provided by Castle Age, we call it p''' *A set of items that the general can equip (we will discuss this later), we call it '''e You can get the majority of the info. you will need from the Oracle Monthly Specials page on the Castle Age wiki. Let's take a look at an example taken from the current version of caap. We will analyze the general only without his/her equipment so for now e''' is left empty: b: 189, n: "Xelia", a: 22, d: 18, i: "Illusion/Mirror Image 2.5% less likely to be dispelled when defeated", p: "hero_xelia", e: As you can see we are talking about Xelia who has a buy_id of 189, 22 attack, 18 defense, etc.... We should explain a little bit about the p field, it's not a full URL and neither is it a filename, this is because caap knows where CA hosts its images and needs only the file name without extension. For a hero typically the picture is hero_' . Equipment Each monthly General has 3 associated items of equipment. Here is a list of the item attributes that are needed to insert them in CAAP : *as with the general the buy_id, is the unique id that CA uses to identify the item, field named b''' *equipment name, '''n *attack and defense values, a''' and '''d *special information, this is a description of the bonus that the item offers, i''' *a picture file, '''p, named like this: eq_'_', for example eq_xelia_weapon is Xelia's Weapon *an equipment type, t''': a number that identifies the item. There are 7 item types: **1 or 9 is for a spell, typically the type name is: magic or spell **2 is for an amulet, the type name is usually: amulet **3 is for a weapon, type name: weapon **4 or 8 is for a shield, type name: shield **5 is for an helmet, type name: helm or helmet **6 is for an armor, type name: armor **7 is for gauntlet, type name: gauntlet You may have noticed that 8 and 9 are duplicates of 1 and 4, I really don't know why, these values affects older generals, it could be an error or it could be for a particular reason. My suggestion is that you use 1 for spells and 4 for shields. Here's the code example for Xelia's Weapon: b : 190, n : "Deceiver's Wand", a : 23, d : 19, i : "+1 Defense to Xelia", p : "eq_xelia_weapon", t : 3 Putting all together Here you can see a skeleton of the whole structure that contains a single hero and all his/her items: { ' e : [{ ' }, {' }, {' }] } and a full working example follows: { b : 189, n : "Xelia", a : 22, d : 18, i : "Illusion/Mirror Image 2.5% less likely to be dispelled when defeated", p : "hero_xelia", e : b : 190, n : "Deceiver's Wand", a : 23, d : 19, i : "+1 Defense to Xelia", p : "eq_xelia_weapon", t : 3 }, { b : 191, n : "Phanstasmal Armguards", a : 12, d : 12, i : "+1 Defense to Xelia", p : "eq_xelia_gauntlet", t : 7 }, { b : 192, n : "Signet from Beyond", a : 15, d : 14, i : "+2 Attack to Xelia", p : "eq_xelia_ring", t : 2 } } '''IMPORTANT: to distinguish between two separate generals, you have to put a comma between the last general inserted and the one you are going to insert, like this: {}, {last_general}] }; In the third line there are characters that closes the whole collection of generals };. Final Result Let's take a look at the final result :